On the Automatic Parallelization of List-Based Functional Programs

نویسنده

  • Wolfgang Schreiner
چکیده

We investigate the behavior of functional programs operating on list structures with respect to automatic parallelization. Many list-processing functions follow typical patterns of recursion that contain inherent horizontal paral-lelism, data parallelism, vertical parallelism and stream parallelism. Starting from a simple classiication of list-processing functions, more and more general versions of functional patterns are presented and it is shown how they cover many concrete programs. The operational behavior of these functional patterns in a parallel environment is discussed and criteria are presented that allow the automatic classiication of functional programs.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Automatic Parallelization of Higher-Order Languages in the Polytope

Automatic parallelization and reduction of memory requirement for functional programs have been two active research topics. In this paper, we address both issues simultaneously thanks to the polytope model, a framework originally crafted for the parallelization of imperative programs.

متن کامل

Program Comprehension Techniques to Improve Automatic Parallelization

Automated program recognition can play a crucial role in overcoming limitations of existing tools for the automatic parallelization of programs for distributed-memory architectu-res. In this paper, we describe the integration of parallelization techniques based on program comprehension into the Vienna Fortran Compilation System (VFCS). After a pattern occurring in a program has been recognized ...

متن کامل

Hyperstrictness and the Parallel Evaluation of Lazy Functional Programs

Strictness analysis can be used for automatic parallelization of lazy functional programs while preserving their semantics (and termination properties, in particular). This paper considers ways of exploiting strictness analysis in implementing functional languages eeciently on stock parallel hardware. A strictness{based parallel evaluation model is presented, and is compared with the more gener...

متن کامل

Semantic Analysis for Parallelizing C

Automatic parallelization of C language programs is a diicult task due, for example, to side eeects within expressions and access to memory via pointers. We describe a method based on semantic analysis of the language, in order to detect parallelism in complex programs using pointer arithmetic. We deene semantic domains which respect the type system of the language, and use them to synthesize e...

متن کامل

Automatic Transformations for Effective Parallel Execution on Intel Many Integrated Core

We demonstrate in this work the potential effectiveness of a source-to-source framework for automatically optimizing a sub-class of affine programs on the Intel Many Integrated Core Architecture. Data locality is achieved through complex and automated loop transformations within the polyhedral framework to enable parallel tiling, and the resulting tiles are processed by an aggressive automatic ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1992